package com.scienzeinternazionali.util;

import java.util.ArrayList;
import java.util.List;

import javax.servlet.ServletContext;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;

import org.apache.log4j.Logger;

import com.scienzeinternazionali.dto.ErrorMessage;


public class ErrorData {
	private static final String GENERICOBJECT = "oggettoGenerico";
	private HttpSession session = null;
	private List<ErrorMessage> listaErrori = new ArrayList<ErrorMessage>();
    private static Logger logger = LogFactory.getLogger(LogFactory.SCIENZEINTERNAZIONALI);

    
	public static ErrorData buildFromRequest(HttpServletRequest request) {
		return new ErrorData(request);
	}

	public static ErrorData buildFromSession(HttpSession session) {
		return new ErrorData(session);
	}

	private ErrorData(HttpServletRequest request) {

		this.session = request.getSession();
	}

	private ErrorData(HttpSession session) {
		this.session = session;
	}

	public ServletContext getServletContext() {
		return this.session.getServletContext();
	}

	public void invalidateSession(HttpServletRequest request) {
		this.session.invalidate();
		this.session = request.getSession();
	}

	
	  public boolean isSessioneScaduta() {
			return session.isNew();
		  }
	

	public void setOggettoGenerico(Object oggettoGenerico) {
		session.setAttribute(ErrorData.GENERICOBJECT, oggettoGenerico);
	}
	public Object getOggettoGenerico() {
		return session.getAttribute(ErrorData.GENERICOBJECT);
	}
	
	
}
